package com.monlyu.util;

import java.util.Collection;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

/********************************************************************************
 * 
 * <b>功能描述☞</b> 集合操作的集合类<br>
 * 
 * <b>开发公司☞</b>重庆唯尼科技有限公司<br>
 * <b>版权☞</b>本文件归重庆唯尼科技有限公司所有<br>
 * <b>项目名☞</b>monlyu<br>
 * <b>文件路径☞</b>com.monlyu.util.CollectionUtil.java<br>
 * <b>开发日期☞</b>2010-1-12 <br>
 * 
 * @author monlyu
 * @since JDK 5
 * @version : 1.0.5
 * 
 ********************************************************************************/
public class CollectionUtils {

	/**
	 * 把数组字符变为一个set
	 * 
	 * @param array
	 *            数组字符
	 * @return Set(array)
	 */
	public static Set<Character> arrayToSet(char[] array) {
		Set<Character> arraySet = new HashSet<Character>();
		for (Character character : arraySet) {
			arraySet.add(character);
		}
		return arraySet;
	}

	/**
	 * 返回是否是Collection的子类<br>
	 * 
	 * @param object
	 * @return 是否为 Collection的子类
	 */
	public static boolean isSubCollection(Object object) {
		return object instanceof Collection<?>;
	}

	/**
	 * 判断有个对象是否为空,如果没有元素也是为true
	 * 
	 * @since 2009-12-29
	 */
	public static boolean isEmpty(Object object) {
		if (object != null) {
			return ((Collection<?>) object).size() == 0;
		}
		return true;
	}

	/**
	 * 取列表的第1个,没有则返回空
	 * 
	 * @since 2010-1-17
	 */
	public static Object head(List<?> list) {
		return CollectionUtils.isEmpty(list) ? null : list.get(0);
	}
}
